package com.hejing.cloud.config;

import feign.Logger;
import feign.Retryer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * ClassName: FeignConfig
 * Package: com.hejing.cloud.config
 * Description:
 *
 * @Author: HeJing
 * @Create: 2024-08-04 11:17
 * @Version: 1.0
 */
@Configuration
public class FeignConfig {

    /**
     * 重试机制
     * @return
     */
    @Bean
    public Retryer myRetryer() {
        return Retryer.NEVER_RETRY;  // Feign默认配置是没有重试机制的。

        // 最大请求次数为3(1 + 2)，初始间隔时间为100ms，重试最大间隔时间是1s
        // return new Retryer.Default(100, 1, 3);
    }

    /**
     * 开启feign日志
     */
    @Bean
    Logger.Level feignLoggerLevel() {

        return Logger.Level.FULL;   // 全打印FULL替代默认的不打印NONE
    }
}


























